package mydictionary;

import java.util.Scanner;

/**
 * @author Administrator
 * 测试类（界面显示）
 */
public class DictionaryTest {
    //让所有方法都用它，定义一次，多次使用
    private static Scanner sc=new Scanner(System.in);
    //创建工具类对象（集合和文件）
    private static DictionaryDao dao=new DictionaryDaoIO();
    public static void main(String[] args) {
        while (true){
            //欢迎界面
            System.out.println("------欢迎光临------");
            System.out.println("1 保存");
            System.out.println("2 查询");
            System.out.println("3 查询所有");
            System.out.println("4 删除");
            System.out.println("5 退出");
            System.out.println("请输入您的选择：");
            //接受用户输入，根据选择进入不同的界面
            //接受用户所有的输入 都当成String类型，避免输入有误
            String num=sc.nextLine();
            switch (num){
                case "1":
                    saveFace();
                    break;
                case "2":
                    queryFace();
                    break;
                case "3":
                    queryAllFace();
                    break;
                case "4":
                    deleteFace();
                    break;
                case "5":
                    System.out.println("欢迎下次光临");
                    System.exit(0);
                    break;
                default:
                    System.out.println("输入有误");
                    break;
            }
        }
    }

    private static void deleteFace() {
        System.out.println("------删除界面------");
        System.out.println("请输入要删除的英文");
        String name=sc.nextLine();
        dao.delete(name);
    }

    private static void queryAllFace() {
        System.out.printf("------查询所有界面-------");
        dao.queryAll();
    }

    private static void queryFace() {
        System.out.printf("------查询界面-------");
        System.out.println("请输入英文：");
        String name=sc.nextLine();
        //有返回值的方法调用
        MyDictionary d=dao.query(name);
        if(d==null){
            System.out.println("词典没有该单词，还需要升级");
        }else{
            System.out.println(d);
        }
    }

/**
 * 保存界面
*/
    private static void saveFace() {
        //1、
        System.out.println("------保存界面------");
        System.out.println("请输入id：");
        //sc接受的都是String类型
        String ids=sc.nextLine();
        //转型
        int id=Integer.parseInt(ids);
        System.out.println("请输入英文：");
        String english=sc.nextLine();
        System.out.println("请输入中文：");
        String chinese=sc.nextLine();
        System.out.println("请输入备注：");
        String comments=sc.nextLine();
        //2、调用工具类的具体方法去实现保存功能
        MyDictionary d=new MyDictionary(id,english,chinese,comments);
        dao.save(d);
    }
}
